Администрирование сетевых подсистем

Лабораторная работа №1

Тойчубекова Асель Нурлановна

Российский университет дружбы народов

2025-09-15

Информация

Докладчик

  • Тойчубекова Асель Нурлановна
  • Студент 3 курса
  • факультет физико-математических и естественных наук
  • Российский университет дружбы народов им. П. Лумумбы
  • 1032235033@rudn.ru

Цель работы

Целью данной работы является приобретение практических навыков установки Rocky Linux на виртуальную машину с помощью инструмента Vagrant.

Задание

  1. Сформируйте box-файл с дистрибутивом Rocky Linux для VirtualBox

  2. Запустите виртуальные машины сервера и клиента и убедитесь в их работоспособности.

  3. Внесите изменения в настройки загрузки образов виртуальных машин server и client, добавив пользователя с правами администратора и изменив названия хостов.

  4. Скопируйте необходимые для работы с Vagrant файлы и box-файлы виртуальных машин на внешний носитель. Используя эти файлы, вы можете попробовать раз- вернуть виртуальные машины на другом компьютере.

Теоретическое введение

Vagrant — это инструмент для создания и управления средами виртуальных машин в рамках единого рабочего процесса. Он позволяет автоматизировать процесс развертывания операционной системы и необходимого программного обеспечения, что значительно облегчает настройку и сопровождение виртуальных окружений. Благодаря этому Vagrant широко применяется при разработке, тестировании и обучении, так как позволяет быстро воспроизводить одинаковые среды на разных компьютерах.

Теоретическое введение

Работа Vagrant основывается на нескольких ключевых понятиях. Во-первых, провайдер (provider) — это система виртуализации, с которой взаимодействует Vagrant (например, VirtualBox или VMware). Во-вторых, box-файл (или Vagrant Box) — это образ виртуальной машины с уже установленной операционной системой, который используется как основа для создания новых виртуальных машин. Третьим важным элементом является Vagrantfile — конфигурационный файл на языке Ruby, в котором задаются параметры виртуальной машины: используемый box-файл, сетевые настройки, ресурсы и другие параметры.

Теоретическое введение

Дополнительно для управления версиями и типами провайдеров может использоваться HCL-файл (HashiCorp Configuration Language). Он описывает метаданные установки и облегчает работу с различными образами.

Для работы с Vagrant предусмотрен набор команд, среди которых:

  • vagrant init — создание шаблонного файла конфигурации;

  • vagrant up — запуск виртуальной машины;

  • vagrant halt — остановка виртуальной машины;

  • vagrant reload — перезагрузка с применением новых настроек;

  • vagrant destroy — удаление виртуальной машины.

Выполнение лабораторной работы

Выполнение лабораторной работы

Для начала лабораторной работы создаю в диске С рабочий каталог work1, в ней подкаталог antoychubekova, и в покаталоге подкаталоги vagrant, packer.

Созание рабочего каталога и подкаталогов

Выполнение лабораторной работы

В созданном рабочем каталоге в подкаталоге packer размещаю образ варианта операционной системы Rocky Linux, Rocky-9.4-x86_64-minimal.iso.

Добавление образа ОС

Выполнение лабораторной работы

В подкаталоге packer помещаю файл vagrant-rocky.pkr.hcl — специальный файл с описанием метаданных по установке дистрибутива на виртуальную машину. Реактирую этот файл как показано в туисе.

Редактирование подкаталога packer

Выполнение лабораторной работы

В подкаталоге packer создаю подкаталог http с файлом ks.cfg — определяет настройки для установки дистрибутива, которые пользователь обычно вводит вручную, в частности настройки языка интерфейса, языковые настройки клавиатуры, тайм-зону, сетевые настройки и т.п.

Редактирование подкаталога packer и http

Выполнение лабораторной работы

В подкаталоге vagrant помещаю файл Vagrantfile — файл с конфигурацией запуска виртуальных машин — сервера и клиента, с текстом данные в туисе.

Редактирование подкаталога vagrant

Выполнение лабораторной работы

В подкаталоге vagrant помещаю файл Makefile — набор инструкций для программы make по работе с Vagrant, с текстом данные в туисе.

Редактирование подкаталога vagrant

Выполнение лабораторной работы

В этом же рабочем каталоге в подкаталоге vagrant создаю каталог provision с подкаталогами default, server и client, в которых будут размещаться скрипты, изменяющие настройки внутреннего окружения базового (общего) образа виртуальной машины, сервера или клиента соответственно.

Редактирование подкаталога vagrant

Выполнение лабораторной работы

В каталогах default, server и client разместите заранее подготовленный скрипт-заглушку 01-dummy.sh (скрипт дан в туисе).

Редактирование подкаталога vagrant

Выполнение лабораторной работы

В каталоге default размещаю заранее подготовленный скрипт 01-user.sh по изменению названия виртуальной машины.

Редактирование подкаталога vagrant

Выполнение лабораторной работы

В каталоге default размещаю заранее подготовленный скрипт 01-hostname.sh по изменению названия виртуальной машины.

Редактирование подкаталога vagrant

Выполнение лабораторной работы

В каталоге server размещаю заранее подготовленный скрипт 02-forward.sh.

Редактирование подкаталога vagrant

Выполнение лабораторной работы

В каталоге client размещаю заранее подготовленный скрипт 01-routing.sh.

Редактирование подкаталога vagrant

Выполнение лабораторной работы

Используя FAR, перехожу в созданный рабочий каталог с проектом. В этом же каталоге размещаю файл packer.exe. И ввожу команду для начала автоматической установки образа операционной системы Rocky Linux в VirtualBox и последующего формирования box-файла с дистрибутивом Rocky Linux для VirtualBox: packer.exe init vagrant-rocky.pkr.hcl.

Выполнение лабораторной работы

Начало формирования box-файла

Выполнение лабораторной работы

Далее ввожу команду: packer.exe build vagrant-rocky.pkr.hcl.

Выполнение лабораторной работы

Начало формирования box-файла

Выполнение лабораторной работы

Процесс установки образа ОС в VirtualBox и последующего формирования box-файла. По окончании процесса в рабочем каталоге сформировался box-файл с названием vagrant-virtualbox-rocky-10-x86_64.box.

Выполнение лабораторной работы

Процесс формирования box-файла

Выполнение лабораторной работы

Процесс формирования box-файла

Выполнение лабораторной работы

Процесс формирования box-файла

Выполнение лабораторной работы

Для регистрации образа виртуальной машины в vagrant в командной строке ввожу: vagrant box add rockylinux10 vagrant-virtualbox-rocky-10-x86_64.box.

Регистрации образа виртуальной машины в vagrant

Выполнение лабораторной работы

Для запуска виртуальной машины Server ввожу в консоли vagrant up server.

Запуска виртуальной машины Server

Выполнение лабораторной работы

Для запуска виртуальной машины Client ввожу в консоли vagrant up client.

Запуска виртуальной машины Client

Выполнение лабораторной работы

Мы видим, что запуск обеих виртуальных машин прошёл успешно, логинюсь под пользователем vagrant с паролем vagrant в графическом окружении.

Выполнение лабораторной работы

Логин в Server

Выполнение лабораторной работы

Логин в Clientr

Выполнение лабораторной работы

Подключаюсь к серверу из консоли, введя:vagrant ssh server, при запроск ввожу пароль vagrant.

Подключение к серверу

Выполнение лабораторной работы

Перехожу к пользователю antoychubekova.

Переход к пользователю antoychubekova

Выполнение лабораторной работы

Отлогиниваюсь.

Выход из пользователя antoychubekova

Выполнение лабораторной работы

Выполняю тоже самое для клиента.

Подключение к клиенту

Выполнение лабораторной работы

Переход к пользователю antoychubekova

Выполнение лабораторной работы

Выход из пользователя antoychubekova

Выполнение лабораторной работы

Выключаю обе виртуальные машины.

Выключение ВМ

Выполнение лабораторной работы

Для отработки созданных скриптов во время загрузки виртуальных машин убедимся, что в конфигурационном файле Vagrantfile до строк с конфигурацией сервера имеется следующая запись:

  • Common configuration

  • config.vm.provision “common user”,

  • type: “shell”,

  • preserve_order: true,

  • path: “provision/default/01-user.sh”

  • config.vm.provision “common hostname”,

  • type: “shell”,

  • preserve_order: true,

  • run: “always”,

  • path: “provision/default/01-hostname.sh”

Выполнение лабораторной работы

У меня в Vagrant файле все прописано.

Выключение ВМ

Выполнение лабораторной работы

Убедимся, что в терминале приглашение отображается в виде antoychubekova@server.antoychubekova.net на сервере и в виде antoychubekova@client.antoychubekova.net на клиенте. Это видно на предыущих рисунках

Выполнение лабораторной работы

После выключения виртуальных машин скопирую необходимые для работы с Vagrant файлы и box-файлы виртуальных машин на в другой каталог ОС. Используя эти файлы, я могу развернуть виртуальные машины на другом компьютере.

Vagrant

Выводы

В ходе выполнения лабораторной работы №1 я приобрела практические навыки установки Rocky Linux на виртуальную машину с помощью инструмента Vagrant.